package com.firefighting.dao;

import java.util.HashMap;
import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.firefighting.entity.Enterprise;

public interface EnterpriseMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(Enterprise record);

    int insertSelective(Enterprise record);

    Enterprise selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(Enterprise record);

    int updateByPrimaryKey(Enterprise record);
	
    /*zhyan 根据企业名称进行查询*/
    Enterprise selectByName(@Param("name") String name);
    /*zhyan 根据企业id更新企业名称*/
    void updateNameById(@Param("name") String name, @Param("id") int id);
    /*zhyan 根据省份查询企业*/
    @SuppressWarnings("rawtypes")
	List<HashMap> selectByProvince(@Param("province") String province);
    /*zhyan 根据省和市信息查询企业*/
    @SuppressWarnings("rawtypes")
	List<HashMap> selectByProvinceAndCity(@Param("province") String province, @Param("city") String city);
    /*zhyan 根据省市县信息查询企业*/
    @SuppressWarnings("rawtypes")
	List<HashMap> selectByProvinceAndCityAndArea(@Param("province") String province, @Param("city") String city, @Param("area") String area);

    //张晗 添加维保企业
	void insertEnterprise(Enterprise e);

	//张晗  获取所有维保企业
	List<Enterprise> selectAllEnterprise();
	 //Liuxc 根据省获取企业ID列表
	List<Integer> getEnterpriseByProvence(String province);
	//Liuxc 根据市获取企业ID列表
	List<Integer> getEnterpriseByCity(String city);
	
	/** 返回hash形式的企业信息列表 */
	@SuppressWarnings("rawtypes")
	List<HashMap> selectAllEnterpriseHash();
	
	/** zhyan 企业id、业主名称、维保企业名称和项目负责人之间的对应关系 */
	@SuppressWarnings("rawtypes")
	List<HashMap> selectProprietorNameAndEnterpriseNameAndProjectManagerWithEnterpriseIdList(@Param("list") List<Integer> idList);
	
	/** zhyan 查询所有企业的id列表 */
	List<Integer> selectIdList();
	
	/** zhyan 查询企业id列表 */
	List<Integer> selectEnterpriseIdListByProvinceAndCity(@Param("province") String province, @Param("city") String city);
}